package com.loong.coupon.common.backend.result;

import lombok.*;

import java.math.BigDecimal;
import java.util.Date;
import java.util.List;

/**
 * @Description:
 * @Author: LiuQun
 * @Date: 2021/1/7 18:38
 */
@Builder
@Setter
@Getter
@AllArgsConstructor
@NoArgsConstructor
public class CouponResult {

    /**
     * 优惠券id
     */
    private Long id;

    /**
     * 优惠券名称
     */
    private String name;

    /**
     * 面额
     */
    private BigDecimal couponMoney;

    /**
     * 优惠券颜色
     */
    private Integer color;

    /**
     * 满减条件
     */
    private BigDecimal discountCondition;

    /**
     * 有效类型(0领取后生效,1固定时间有效)
     */
    private Boolean usefulType;

    /**
     * 有效天数
     */
    private Integer usefulDay;

    /**
     * 有效起始时间
     */
    private Date startTime;

    /**
     * 有效结束时间
     */
    private Date endTime;

    /**
     * 发放总数
     */
    private Integer totalNum;

    /**
     * 领取数量
     */
    private Integer takeNum;

    /**
     * 使用数量
     */
    private Integer useNum;

    /**
     * 用户限领数量(人/张)
     */
    private Integer receiveNum;

    /**
     * 承担方
     */
    private Long bears;

    /**
     * 优惠券来源
     */
    private Integer couponSource;

    /**
     * 是否可退(0不可退,1可退)
     */
    private Boolean sendBackYes;

    /**
     * 优惠券类型
     */
    private Integer couponType;

    /**
     * 状态(0失效,1生效)
     */
    private Boolean status = true;

    /**
     * 适用用户
     */
    private String applyUsers;

    /**
     * 适用范围
     */
    private String applyRange;

    /**
     * 描述
     */
    private String description;

    /**
     * 创建时间
     */
    private Date createTime;

    /**
     * 更新时间
     */
    private Date lastUpdateTime;

    /**
     * 优惠券适用规则
     */
    private List<CouponApplyRuleResult> ruleResultList;
}
